package vashion.azeroth.core.personal.pojo;

import java.util.Date;

import org.apache.commons.lang3.StringUtils;
import org.codehaus.jackson.annotate.JsonIgnore;

import vashion.azeroth.common.im.LoginSH256Util;
import vashion.azeroth.core.pojo.BaseObject;

public class PersonalMember extends BaseObject {

	private static final long serialVersionUID = 9040515837722803680L;

	private Long memberId;

    private String memberName;

    @JsonIgnore
    private String memberPwd;

    private Integer status;

    private Integer sex;

    private String nickName;

    private String headImg;

    private String phone;

    private String mobilePhone;

    private Date timeAdd;

    @JsonIgnore
    private Date timeEdit;

    @JsonIgnore
    private Date timeUpgrade;

    @JsonIgnore
    private Long inviteMemberId;

    @JsonIgnore
    private String inviteMemberName;
    
    @JsonIgnore
    private Date timeLogon;

    @JsonIgnore
    private String remark;
    
    //扩展属性
    private String inviteCode;
    //注册来源
    @JsonIgnore
    private String src;
    //访问token
    private String token;
    
    @JsonIgnore
    private String payPwd;
    
    private Integer type;
    
    private String registrationId;
    
    private Integer availableInviteCodeCount;
    
    /**
     * 给悟空使用的相关参数
     */
    private LoginSH256Util.ImSignModel imSignModel;
    
    private Boolean hasPayPwd;
    
    private Long customerService;

    public Long getMemberId() {
		return memberId;
	}

	public void setMemberId(Long memberId) {
		this.memberId = memberId;
	}

	public String getMemberName() {
        return memberName;
    }

    public void setMemberName(String memberName) {
        this.memberName = memberName;
    }

    public String getMemberPwd() {
        return memberPwd;
    }

    public void setMemberPwd(String memberPwd) {
        this.memberPwd = memberPwd;
    }

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Integer getSex() {
		return sex;
	}

	public void setSex(Integer sex) {
		this.sex = sex;
	}

	public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getHeadImg() {
        return headImg;
    }

    public void setHeadImg(String headImg) {
        this.headImg = headImg;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getMobilePhone() {
        return mobilePhone;
    }

    public void setMobilePhone(String mobilePhone) {
        this.mobilePhone = mobilePhone;
    }

    public Date getTimeAdd() {
        return timeAdd;
    }

    public void setTimeAdd(Date timeAdd) {
        this.timeAdd = timeAdd;
    }

    public Date getTimeEdit() {
        return timeEdit;
    }

    public void setTimeEdit(Date timeEdit) {
        this.timeEdit = timeEdit;
    }

    public Date getTimeUpgrade() {
        return timeUpgrade;
    }

    public void setTimeUpgrade(Date timeUpgrade) {
        this.timeUpgrade = timeUpgrade;
    }

    public Long getInviteMemberId() {
		return inviteMemberId;
	}

	public void setInviteMemberId(Long inviteMemberId) {
		this.inviteMemberId = inviteMemberId;
	}

	public String getInviteMemberName() {
        return inviteMemberName;
    }

    public void setInviteMemberName(String inviteMemberName) {
        this.inviteMemberName = inviteMemberName;
    }

    public Date getTimeLogon() {
        return timeLogon;
    }

    public void setTimeLogon(Date timeLogon) {
        this.timeLogon = timeLogon;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

	public String getInviteCode() {
		return inviteCode;
	}

	public void setInviteCode(String inviteCode) {
		this.inviteCode = inviteCode;
	}

	public String getSrc() {
		return src;
	}

	public void setSrc(String src) {
		this.src = src;
	}

	public String getToken() {
		return token;
	}

	public void setToken(String token) {
		this.token = token;
	}

	public String getPayPwd() {
		return payPwd;
	}

	public void setPayPwd(String payPwd) {
		this.payPwd = payPwd;
	}

	public Boolean getHasPayPwd() {
		return !StringUtils.isBlank(payPwd);
	}

	public void setHasPayPwd(Boolean hasPayPwd) {
		this.hasPayPwd = hasPayPwd;
	}

	public Long getCustomerService() {
		return customerService;
	}

	public void setCustomerService(Long customerService) {
		this.customerService = customerService;
	}

    public LoginSH256Util.ImSignModel getImSignModel() {
        return imSignModel;
    }

    public void setImSignModel(LoginSH256Util.ImSignModel imSignModel) {
        this.imSignModel = imSignModel;
    }

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public String getRegistrationId() {
		return registrationId;
	}

	public void setRegistrationId(String registrationId) {
		this.registrationId = registrationId;
	}

	public Integer getAvailableInviteCodeCount() {
		return availableInviteCodeCount;
	}

	public void setAvailableInviteCodeCount(Integer availableInviteCodeCount) {
		this.availableInviteCodeCount = availableInviteCodeCount;
	}
	
}